嗨我是k66,本系列文到了尾聲,為了有始有終,本篇會先看漫畫主角們最後結局。接著再帶讀者回顧這28天實作內容,最後再介紹一些寫UEFI程式時常見錯誤及如何debug。

回顧所學
以下為文字版,漫畫版請點此
- Day2:
 1.開機畫面轉圈圈: CPU與OS控制權的轉換
 2.開機過程控制權轉移: Bootloader->kernel->OS
 3.boot menu(Linux)
 4.boot menu(macOS)
 5.boot menu(Windows)
 6.豬油博士: Windows最霸道!我們的bootloader可以學它!
- Day3:
 豬油博士: 第一支OinkBL.asm->Oink.bin
- Day4:
 1.豬油博士: OinkBL.bin在QEMU上執行成功!
 2.Oink: 這支OinkBL.bin不能在實體機上運行怎辦?
 3.豬油博士: 寫UEFI!
- Day5:
 1.豬油博士介紹UEFI開機七階
 2.豬油博士介紹簡化後的三階
- Day6-Day7:
 手把手超詳細安裝過程
- Day8:
 第一支efi
- Day9:
 1.博士介紹超詳細Modue、Package
 2.博士介紹超詳細INF、DSC、DEC
- Day10:
 介紹三種UEFI APPLICATION
- Day11:
 設計OinkBL開機畫面
Day12以後正式實作開機畫面
- Day12-13:
 1.設定螢幕解析度
 2.畫紅色矩形
- Day14-Day15:
 畫Logo但會跑版
- Day16:
 解決Logo跑板問題
- Day17:
 提供第二種畫Logo方法
- Day18:
 顯示系統時間
- Day19:
 按ESC退出
- Day20:
 豬油博士介紹kernel開發原理
- Day21:
 1.Kernel.asm->Kernel.bin
 2.Kernel.c與Kernel.bin連結
- Day22:
 OinkBootMenu.c
- Day23:
 將OinkBL.c與kernel.c連結
- Day24:
 開機畫面成形!
- Day25:
 把之前寫的c檔案合併至Entry.c
- Day26:
 在開機選單加入之前寫的螢幕解析度
- Day27:
 來寫個UEFI小遊戲吧!
UEFI程式報錯與debug
| 代碼 | 問題描述 | 解法 | 
| 7000 | namke.exe沒裝好 | 更正之 | 
| 7000 | inf的EntryPoint設錯 | 更正之 | 
| 7000 | c程式存在compile error | 單元測試 | 
| 4000 | 缺library class [LibStudio] | 通常找不到是錯字,需在inf內更正之 | 
| 7000和F002 | 已初始化區域變數,但並未參考 | 表示變數被宣告但未使用,解法是使用之。 | 
| 1005 | Not support [xx.inf] Please select one of: all genc genmake modules libraries fds clean cleanall cleanlib run | 通常是k66run1.bat或edk2setup.bat沒執行 | 
今天回顧所學與介紹常見程式報錯,明天會介紹名詞與後續規劃,我們明天見!